The present invention relates in general to improved information processing systems. In particular, the present invention relates to a method and system for recovering from invalid hyperlink addresses.
The development of distributed, computer networks, such as the Internet, allows users to retrieve vast amounts of electronic information previously unavailable. The Internet increasingly is displacing more conventional means of information transmission, such as newspapers, magazines, and even television.
Electronic information transferred between computer networks (e.g., the Internet) can be presented to a user in hypertext, a metaphor for presenting information in a manner in which text, images, sounds, and actions become linked together in a complex, nonsequential web of associations that permit the user to xe2x80x9cbrowsexe2x80x9d through related topics, regardless of the presented order of the topics. For example, traveling among links to the word xe2x80x9cironxe2x80x9d in an article might lead the user to the periodic table of the chemical elements (i.e., linked by the word xe2x80x9cironxe2x80x9d), or to a reference to the use of iron in weapons in Europe in the Dark Ages. The term xe2x80x9chypertextxe2x80x9d is used to describe documents, as presented by a computer, that express the nonlinear structure of ideas, as opposed to the linear format of books, film, and speech. The combination of hypertext documents connected by their links in the Internet is referred to as the World Wide Web (WWW).
Networked computers utilizing hypertext conventions typically follow a client/server architecture. A xe2x80x9cclientxe2x80x9d is usually a computer that requests a service provided by another computer (i.e., a server). A xe2x80x9cserverxe2x80x9d is typically a remote computer system accessible over the network. Based upon such requests by the user at the client, the server presents information to the user as responses to the client. The client typically contains a program, called a browser, that communicates the requests to the server and formats the responses for viewing (browsing) at the client. The browser retrieves a web page from the server and displays it to the user at the client.
A xe2x80x9cweb pagexe2x80x9d (also referred to as a xe2x80x9cpagexe2x80x9d) is a data file, or document, written in a hyper-text language that may have hyperlinks, text, graphic images, and even multimedia objects, such as! sound recordings or video clips, associated with that data file.
A hyperlink is an address or link that points to a web page. The hyperlink is often presented to the user as a button on a web page, which the user may select, which causes the browser to retrieve the linked web-page. This linked web-page might be on the same server as the first web-page, and it might have been created by the same web-page designer as the first web-page. But, it is very common for the two web pages to be on different servers and to have been created and maintained by different web-page designers. In fact, the creator of the linked web-page might be unaware that the first web-page contains the link.
Web pages can be quite dynamic, and it is common for their creators to change their content and even move them to different addresses or servers. Therefore, it is common for the user to encounter a broken or invalid hyperlink, meaning that when the user selects the hyperlink in a first web-page, the linked web-page is not present at the specified address. Although this is more common when the creators of the two web pages are different, it can also occur when the same creator created both web-pages and then has failed to keep them synchronized through oversight or neglect.
After moving a web page to a new address, some web page creators will temporarily place a pointer at the old address that points to the new address. Unfortunately, this is not a general purpose solution because not all web page creators will place a pointer at the old address, and even if they do, sometimes the pointer is also incorrect.
From the foregoing, it can be seen that a need exists for a mechanism for recovering from invalid hyperlink addresses.
The invention recovers from an invalid hyperlink address. In the preferred embodiment, a browser sends a request containing a hyperlink address of a file to a server. When the browser receives a message from the server indicating that the address is invalid, the browser shortens the address to the next highest directory by deleting the most narrow portion of the address and retries the request using the new, shortened address. Since many server haves their files organized hierarchically, this recovery strategy provides a good alternative to the original, invalid address.